/**
 * 左侧导航条的单击事件控制器
 *
 */
Ext.define('gytoa.view.main.region.LeftController', {
    extend: 'Ext.app.ViewController',

    requires: ['Ext.window.MessageBox','Ext.ux.ProgressBarPager'],
    uses: ['gytoa.view.main.region.CommonGrid','gytoa.utils.factory.GridFieldsFactory'
	,'gytoa.utils.factory.GridColumnsFactory'],
    alias: 'controller.left',

    //左侧导航树的点击展开右边面板事件
	onMenuBtnClick: function(o, oSelected){
		//TODO MULTISELECT
		if(oSelected[0].isLeaf()){

			var id = 'GYT-MENU-'+oSelected[0].getData().menuname;
			var maincenter = this.getView().up('app-main').down('center');
			var cpanel = maincenter.down('panel[alias='+id+']');
			var columnSchema = this.getViewModel().get('testGridSchema');

			if(cpanel){
				maincenter.setActiveTab(cpanel);
			}else{
				var gfields = gytoa.utils.factory.GridFieldsFactory.getFields(columnSchema);
				var gridmodel = Ext.create('Ext.data.Model', {
					 fields: gfields
				 });
				var gridstore = Ext.create('gytoa.store.main.CommonGridStore', {
					model: gridmodel,
					autoload:true
				});
				//未知原因没有自动加载
				gridstore.load();
                
                var fcolumns = gytoa.utils.factory.GridColumnsFactory.getColumns(columnSchema);
				cpanel = Ext.create('Ext.panel.Panel',{
					alias:id,
					closable:true,//加入之后才可以有关闭按钮、插件才可以使用
					reorderable:true,
					title:oSelected[0].getData().text,
					items:{
						xtype:'commongrid',
						store:gridstore,
						viewConfig:{
							stripeRows: true
						},
						columns: fcolumns
					},
					dockedItems: [{
						xtype: 'pagingtoolbar',
						store: gridstore,
						style: {
							backgroundcolor: '#3892d3'
						},
						dock: 'bottom',
						plugins : Ext.create("Ext.ux.ProgressBarPager",{defaultText:'加载中...'}),
						displayInfo: true,
						beforePageText : '第',
						emptyMsg : '没有可显示的数据',
						displayMsg : '显示第{0}到{1}条，共{2}条 ',
						afterPageText : '页，共{0}页',
						firstText : '首页',
						prevText : '上一页',
						nextText : '下一页',
						lastText : '末页'
					}]
				});
				maincenter.add(cpanel);
				maincenter.setActiveTab(cpanel);
			};
		}else{
		}
	}
});
